package com.zHan.service;

import com.zHan.dto.QueryPageDto;
import com.zHan.pojo.Article;
import com.zHan.pojo.PageBean;
import com.zHan.pojo.Result;

/**
 * ClassName: ArticleService
 * Description:
 * date: 2023/11/9 0009 19:34
 *
 * @author zHan
 */
public interface ArticleService {

    /**
     * 新增文章
     *
     * @param article
     * @return
     */
    Result add(Article article);

    /**
     * 文章列表(条件分页)
     *
     * @param dto
     * @param categoryId
     * @param state
     * @return
     */
    Result<PageBean<Article>> queryPage(QueryPageDto dto, Integer categoryId, String state);

    /**
     * 获取文章详情
     *
     * @param id
     * @return
     */
    Result findById(Integer id);

    /**
     * 更新文章
     *
     * @param article
     * @return
     */
    Result update(Article article);

    /**
     * 删除文章
     *
     * @param id
     * @return
     */
    Result delete(Integer id);
}
